package com.by.service;

import com.by.bean.CartInfo;
import com.by.bean.ShopCart;
import com.by.bean.ShopCartItem;

public interface ShopCartItemService {
    /**
     * 添加商品到购物车
     */
    int addToCart(ShopCartItem cartItem);

    /**
     * 获取购物车所有商品
     */
    ShopCart getCart(Long userId);

    /**
     * 删除购物车商品
     */
    int deleteItem(Long userId, Long skuId);


    /**
     * 清空购物车
     */
    int clearCart(Long userId);


    /**
     * 更新购物车商品数量
     * @param userId 用户id
     * @param skuId 商品id
     * @param delta 数量变化量
     * @return
     */
    int updateCartCount(Long userId, Long skuId, int delta);










    /**
     * 获取购物车信息（包含商品详情）
     */
    CartInfo getCartInfo(Long userId);



    /**
     * 更新商品选中状态
     */
    void checkItem(Long userId, Long skuId, Boolean checked);





    /**
     * 获取购物车商品总数
     */
    Integer getCartCount(Long userId);

}
